#include "apue.h"
int globvar= 6; /* external variable in intialzied data */
char buf[]= "a write to stdout\n";

int main(void) {
    int var;    /* automatic variable on the stack */
    pid_t pid;

    var= 88;
    if (write(STDOUT_FILENO, buf, sizeof(buf)-1) != sizeof(buf) - 1)
        err_sys("write error");
    printf("before fork\n");
    fflush(stdout);

    if ((pid= fork()) < 0) {
        err_sys("fork error");
    } else if (pid == 0) {  /* child */
        globvar++;
        var++;
    } else {
        sleep(2);   /* parent */
    }
    printf("pid= %ld, glob = %d, var = %d\n", (long)getpid(), globvar, var);
    exit(0);
}
